import java.util.List;

public class demo1 {
    public void hanota(List<Integer> A, List<Integer> B, List<Integer> C) {
        int n = A.size();
        zhuangy(A, B, C, n);
    }

    public void zhuangy(List<Integer> A, List<Integer> B, List<Integer> C, int n) {
        //当把A中除第一个原数看成A 去操作所以是移动A.size()-1就能保证移动的是目标的最后一个元素

        //当n==1时直接移就行 不需要进行后面的操作了
        if (n == 1) {
            C.add(A.remove(A.size() - 1));
            return;
        }
        zhuangy(A, C, B, n - 1);
        //将第n个盘子从A移C   下标0是第一个元素 需要移除的是最后一个元素
        C.add(A.remove(A.size() - 1));
        zhuangy(B, A, C, n - 1);
    }
}